Lịch sử UTF-8

Cho đến đầu năm 1992, người ta vẫn đang tìm kiếm một bộ mã hóa thành byte cho các tập ký tự có nhiều byte. Tiêu chuẩn ISO 10646 ở dạng nháp có một phần phụ không bắt buộc có tên là UTF cung cấp một cách mã hóa ra dạng byte cho các điểm mã 32-bit của nó. Cách mã hóa này không tốt về mặt hiệu suất, nhưng đã giới thiệu cách ký hiệu ở dạng byte trong dải 0–127 của ASCII theo UTF, từ đó tạo ra khả năng tương thích ngược.

Vào tháng 7 năm 1992, ủy bản XoJIG của X/Open bắt đầu tìm kiếm một cách mã hóa tốt hơn. Dave Prosser thuộc Phòng thí nghiệm Hệ thống Unix đề xuất một cách mã hóa có đặc tính hiện thực nhanh hơn và giới thiệu cải tiến sao cho các ký tự ASCII 7-bit chỉ đại diện cho chính chúng; còn mọi chuỗi nhiều byte khác sẽ chỉ thêm các byte có bit cao bằng 1.

Vào tháng 8 năm 1992, đề xuất này đã được đại diện của IBM X/Open chuyển giao cho các bên có quan tâm. Ken Thompson thuộc nhóm hệ điều hành Plan 9 tại Bell Labs sau đó đã thực hiện một chỉnh sửa quan trọng cho bộ mã hóa, cho phép nó tự đồng bộ, tức là, không cần phải đọc từ đầu dãy để tìm các biên điểm mã nữa. Thiết kế của Thompson được mô tả tổng quan vào ngày 2 tháng 9 năm 1992 trong bữa ăn với Rob Pike. Những ngày sau, Pike và Thompson hiện thực nó và cập nhật Plan 9 để sử dụng nó rộng rãi, rồi thông báo thành công của họ lại cho X/Open.[5]

UTF-8 lần đầu tiên được giới thiệu chính thức là tại hội nghị USENIXSan Diego, diễn ra từ ngày 25-29 tháng 1 năm 1993.